import 'package:flutter/material.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:velocity_x/velocity_x.dart';

void main() {
  // 最简单的方向包装组件
  Widget wrapWithDirectionality({required Widget child}) {
    return Directionality(
      textDirection: TextDirection.ltr,
      child: child,
    );
  }

  group('VelocityX 最基本功能测试', () {
    // 测试文本扩展 - 最简单的文本创建
    testWidgets('基本文本测试', (WidgetTester tester) async {
      await tester.pumpWidget(
        wrapWithDirectionality(
          child: 'Hello VelocityX'.text.make(),
        ),
      );

      expect(find.text('Hello VelocityX'), findsOneWidget);
    });

    // 测试VxBox - 最简单的盒子创建
    testWidgets('基本盒子测试', (WidgetTester tester) async {
      await tester.pumpWidget(
        wrapWithDirectionality(
          child: VxBox(child: Text('Box')).make(),
        ),
      );

      expect(find.text('Box'), findsOneWidget);
    });

    // 测试VStack - 最简单的垂直布局
    testWidgets('基本垂直布局测试', (WidgetTester tester) async {
      await tester.pumpWidget(
        wrapWithDirectionality(
          child: VStack([
            'Item 1'.text.make(),
            'Item 2'.text.make(),
          ]),
        ),
      );

      expect(find.text('Item 1'), findsOneWidget);
      expect(find.text('Item 2'), findsOneWidget);
    });

    // 测试HStack - 最简单的水平布局
    testWidgets('基本水平布局测试', (WidgetTester tester) async {
      await tester.pumpWidget(
        wrapWithDirectionality(
          child: HStack([
            'Left'.text.make(),
            'Right'.text.make(),
          ]),
        ),
      );

      expect(find.text('Left'), findsOneWidget);
      expect(find.text('Right'), findsOneWidget);
    });
  });
}